博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
phpcms 如何获取文章
阅读量:6713 次
发布时间:2019-06-25

本文共 1603 字,大约阅读时间需要 5 分钟。

请求地址

先来判断地址对应的数据表

查阅phpcms v9 数据表结构手册 

           可以获知我们要取出news,v9_news_data 两个表中的数据

下一步就要理解数据是如何取出的

相关的控制器如下

 

这个比较简单就是调用 content模块下index控制器的show方法 数据表结构手册

下一步介绍下show()方法如何操作数据库的

请求参数catid=6&id=6

而我们已经知道文章存储在 文章模型表 news,news_data表id=6这一行,

catid为栏目id 查询数据表结构手册 或者打开数据库 可以找到_category栏目表可以轻易发现

每个栏目的文章模型 由modelid字段定义

再查手册可以确认modelid对应表model

所以请求参数在show()转化为参数modelid=1&id=6

至此我们知道要获取表news,news_data中=6的信息

下面就是操作数据库了

$tablename = $this->db->table_name = $this->db->db_tablepre.$MODEL[$modelid]['tablename'];		$r = $this->db->get_one(array('id'=>$id));		if(!$r || $r['status'] != 99) showmessage(L('info_does_not_exists'),'blank');				$this->db->table_name = $tablename.'_data';		$r2 = $this->db->get_one(array('id'=>$id));		$rs = $r2 ? array_merge($r,$r2) : $r;

 取出主表内容和附表内容

其中get_one方法在 mysql.class.php 数据库实现类

 $content_output = new content_output($modelid,$catid,$CATEGORYS);

  $data = $content_output->get($rs);判断是否有缓存有的话读取缓存没有输出$rs
  extract($data);这个是php本身的函数将本函数用来将变量从数组中导入到当前的符号表中

"blue", "size" => "medium", "shape" => "sphere");extract($var_array, EXTR_PREFIX_SAME, "wddx");echo "$color, $size, $shape, $wddx_size\n";?>
blue, large, sphere, medium

 再去看模板文件就比较简单了

首页
> {catpos($catid)} 正文

{$title}
{$inputtime}   来源:{$copyfrom}   评论:0 点击:

{if $description}
{$description}
{/if}
{if $allow_visitor==1} {$content}

 

 

 

 

 

 

 

 

转载于:https://www.cnblogs.com/majin/p/3804599.html

你可能感兴趣的文章
Java连接Elasticsearch集群
查看>>
android 时间滚动控件 底部弹出
查看>>
HDU 5289 Assignment rmq
查看>>
Sublime-text markdown with Vim mode and auto preview
查看>>
CentOS6.5安装HBase集群及多HMaster配置
查看>>
Spring MVC 拦截 js,css,png 等资源
查看>>
Windows 7 共享文件夹 给 VirtualBox 中的 Ubuntu 14
查看>>
iOS开发UI篇—字典转模型
查看>>
Web接口测试工具--Jmeter
查看>>
[LeetCode] Remove K Digits 去掉K位数字
查看>>
spring profile 多环境配置管理
查看>>
iOS开发 iOS10推送必看
查看>>
C#设计模式——抽象工厂模式(Abstract Factory Pattern)
查看>>
软件测试--关键字
查看>>
nginx知识点
查看>>
字符串操作(字符数统计及字符串反转)
查看>>
递归写法参考
查看>>
【Python】学习笔记八:面向对象
查看>>
单片机中PWM的原理与控制程序
查看>>
RStudio中,出现中文乱码问题的解决方案
查看>>